package com.jprocms.module.cms.dal.mysql.accesspage;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jpro.framework.mybatis.core.mapper.BaseMapperX;
import com.jprocms.module.cms.controller.admin.accesspage.vo.AccessPagePageReqVO;
import com.jprocms.module.cms.dal.dataobject.accesspage.AccessPageDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 访问受访页面 Mapper
 *
 * @author jprocms
 */
@Mapper
public interface AccessPageMapper extends BaseMapperX<AccessPageDO> {


    IPage<AccessPageDO> statPage(@Param("params") AccessPagePageReqVO reqVO, IPage<AccessPageDO> page);

    /**
     * 删除指定日期字符串之前的数据
     *
     * @param dateString 指定的日期字符串
     * @return 被删除的数据条数
     */
    int deleteBeforeDateString(@Param("dateString") String dateString);


    /**
     * 根据日期字符串删除数据
     *
     * @param dateString 日期字符串
     * @param type       类型
     * @return 被删除的数据条数
     */
    int deleteByDateString(@Param("dateString") String dateString, @Param("type") Integer type);

    /**
     * 根据站点ID删除数据
     *
     * @param siteId 站点ID
     * @return 被删除的数据条数
     */
    int deleteBySiteId(@Param("siteId") Long siteId);
}
